System and method for broadcasting messages to nodes within a wireless mesh network

ABSTRACT

A node within a wireless mesh network is configured to forward a high-priority message to adjacent nodes in the wireless mesh network by either (i) transmitting the message during successive timeslots to the largest subset of nodes capable of receiving transmissions during each timeslot, or (ii) transmitting the message on each different channel during the timeslot when the largest subset of nodes are capable of receiving transmissions on each of those channels.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of the co-pending U.S. patentapplication titled, “SYSTEM AND METHOD FOR BROADCASTING MESSAGES TONODES WITHIN A WIRELESS MESH NETWORK,” filed on Sep. 24, 2012 and havingSer. No. 13/625,764. The subject matter of this related application ishereby incorporated herein by reference.

BACKGROUND OF THE INVENTION Field of the Invention

Embodiments of the present invention relate generally to wirelessdigital communication and more specifically to a system and method forbroadcasting messages to nodes within a wireless mesh network.

Description of the Related Art

A conventional wireless mesh network includes a plurality of nodesconfigured to communicate with one another. A given node within thewireless mesh network may transmit messages to, and receive messagesfrom, neighboring nodes in order to propagate those messages across theentire network. In some situations, an important message must be sentacross the wireless mesh network to the different nodes in as littletime as possible. To facilitate the delivery of important messages,conventional nodes are configured to periodically tune in to a specificchannel that is reserved for the transmission of these importantmessages.

However, one problem with this technique is that situations requiringthe transmission of important messages are quite rare, and so tuning into the reserved channel is often unnecessary. Further, when a node tunesin to the reserved channel, that node cannot receive other messages(i.e. messages transmitted on non-reserved channels), and so the overallthroughput of the wireless mesh network is periodically slowed.

As the foregoing illustrates, what is needed in the art is an improvedtechnique for broadcasting messages across a wireless mesh network.

SUMMARY OF THE INVENTION

One embodiment of the present invention sets forth acomputer-implemented method for transmitting a message from a first noderesiding within a network to nodes residing adjacent to the first node,including selecting a first channel from a set of channels on which thenodes residing adjacent to the first node are capable of receivingtransmissions during a sequence of time intervals, identifying a firsttime interval in the sequence of time intervals during which thegreatest number of nodes residing adjacent to the first node are capableof receiving transmissions on the first channel, and transmitting themessage on the first channel during the first time interval.

One advantage of this approach is that nodes residing in the wirelessnetwork are not required to periodically tune-in to a reserved frequencyto listen for high-priority messages, thereby improving the efficiencyand throughput of the wireless mesh network as a whole.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited features of the presentinvention can be understood in detail, a more particular description ofthe invention, briefly summarized above, may be had by reference toembodiments, some of which are illustrated in the appended drawings. Itis to be noted, however, that the appended drawings illustrate onlytypical embodiments of this invention and are therefore not to beconsidered limiting of its scope, for the invention may admit to otherequally effective embodiments.

FIG. 1 illustrates a network system, according to one embodiment of theinvention;

FIG. 2 illustrates a network interface configured to transmit andreceive data within a mesh network, according to one embodiment of theinvention;

FIG. 3 is a flowchart of method steps illustrating a first technique fortransmitting a message to a set of neighboring nodes; and

FIG. 4 is a flowchart of method steps illustrating a second techniquefor transmitting a message to a set of neighboring nodes, according toone embodiment of the invention.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth toprovide a more thorough understanding of the present invention. However,it will be apparent to one of skill in the art that the presentinvention may be practiced without one or more of these specificdetails. In other instances, well-known features have not been describedin order to avoid obscuring the present invention.

FIG. 1 illustrates a network system 100, according to one embodiment ofthe invention. The network system 100 comprises a wireless mesh network102, which may include a source node 110, intermediate nodes 130 anddestination node 112. The source node 110 is able to communicate withcertain intermediate nodes 130 via communication links 132. Theintermediate nodes 130 communicate among themselves via communicationlinks 134. The intermediate nodes 130 communicate with the destinationnode 112 via communication links 136. The network system 100 may alsoinclude an access point 150, a network 152, and a server 154.

A discovery protocol may be implemented to determine node adjacency toone or more adjacent nodes. For example, intermediate node 130-2 mayexecute the discovery protocol to determine that nodes 110, 130-1,130-3, and 130-5 are adjacent to node 130-2. Furthermore, this nodeadjacency indicates that communication links 132-2, 134-2, 134-4 and134-3 may be established between the nodes 110, 130-1, 130-3, and 130-5,respectively. Any technically feasible discovery protocol may beimplemented without departing from the scope and spirit of embodimentsof the present invention.

The discovery protocol may also be implemented to determine the hoppingsequences of adjacent nodes, i.e. the sequence of channels across whichnodes periodically receive payload data. As is known in the art, a“channel” may correspond to a particular range of frequencies. The timerequired by a node 130 to cycle through all channels in the hoppingsequence associated with that node is referred to as an “epoch.” Anepoch may be divided into “timeslots” that correspond to intervals oftime during which a node 130 receives payload data on a given channel.By implementing the discovery protocol and retrieving the hoppingsequences of adjacent nodes, a node 130 may optimize the transmission ofhigh-priority messages to those adjacent nodes, as described in greaterdetail below and in conjunction with FIGS. 3-4.

Once adjacency is established between the source node 110 and at leastone intermediate node 130, the source node 110 may generate payload datafor delivery to the destination node 112, assuming a path is available.The payload data may comprise an Internet protocol (IP) packet, anEthernet frame, or any other technically feasible unit of data.Similarly, any technically feasible addressing and forwarding techniquesmay be implemented to facilitate delivery of the payload data from thesource node 110 to the destination node 112. For example, the payloaddata may include a header field configured to include a destinationaddress, such as an IP address or Ethernet media access control (MAC)address.

Each intermediate node 130 may be configured to forward the payload databased on the destination address. Alternatively, the payload data mayinclude a header field configured to include at least one switch labelto define a predetermined path from the source node 110 to thedestination node 112. A forwarding database may be maintained by eachintermediate node 130 that indicates which communication link 132, 134,136 should be used and in what priority to transmit the payload data fordelivery to the destination node 112. The forwarding database mayrepresent multiple paths to the destination address, and each of themultiple paths may include one or more cost values. Any technicallyfeasible type of cost value may characterize a link or a path within thenetwork system 100. In one embodiment, each node within the wirelessmesh network 102 implements substantially identical functionality andeach node may act as a source node, destination node or intermediatenode.

In network system 100, the access point 150 is configured to communicatewith at least one node within the wireless mesh network 102, such asintermediate node 130-4. Communication may include transmission ofpayload data, timing data, or any other technically relevant databetween the access point 150 and the at least one node within thewireless mesh network 102. For example, communications link 140 may beestablished between the access point 150 and intermediate node 130-4 tofacilitate transmission of payload data between wireless mesh network102 and network 152. The network 152 is coupled to the server 154 viacommunications link 142. The access point 150 is coupled to the network152, which may comprise any wired, optical, wireless, or hybrid networkconfigured to transmit payload data between the access point 150 and theserver 154.

In one embodiment, the server 154 represents a destination for payloaddata originating within the wireless mesh network 102 and a source ofpayload data destined for one or more nodes within the wireless meshnetwork 102. In one embodiment, the server 154 executes an applicationfor interacting with nodes within the wireless mesh network 102. Forexample, nodes within the wireless mesh network 102 may performmeasurements to generate measurement data, such as power consumptiondata. The server 154 may execute an application to collect themeasurement data and report the measurement data. In one embodiment, theserver 154 queries nodes within the wireless mesh network 102 forcertain data. Each queried node replies with requested data, such asconsumption data, system status and health data, and so forth. In analternative embodiment, each node within the wireless mesh network 102autonomously reports certain data, which is collected by the server 154as the data becomes available via autonomous reporting.

In some situations, the server 154 broadcasts payload data to nodes 130that includes high-priority messages affecting the functionality of thenodes 130. For example, the wireless mesh network 102 may occasionallyneed to shed emergency load, and so server 154 may broadcast ahigh-priority message to nodes 130 that commands the nodes 130 tooffload the emergency load according to certain specifications. Whensituations arise that cause the server 154 to broadcast a high-prioritymessage, server 154 transmits the message to wireless mesh network 102via access point 150. Access point 150 may then forward the message to,e.g., node 130-4. Node 130-4 may then cause the message to propagateacross wireless mesh network 102 via the other nodes 130 within thatnetwork.

In order to facilitate the efficient delivery of high-priority messagesto a large fraction of nodes 130 within wireless mesh network 102, eachnode 130 is configured to forward high-priority messages to adjacentnodes 130 based on analyzing the hopping sequences of those adjacentnodes, as mentioned above. In doing so, a given node 130 may employ afirst technique for transmitting a high-priority message that minimizesthe amount of time required to transmit the message to adjacent nodes,according to a first embodiment of the invention. Additionally, the node130 may also employ a second technique for transmitting the highpriority message that minimizes the number of transmissions required totransmit the message to adjacent nodes, according to a second embodimentof the invention.

In the first embodiment, when a given node 130 receives a high-prioritymessage (e.g., from access point 150 or from an upstream node 130), thenode 130 analyzes the hopping sequences of adjacent nodes and identifiesthe channel on which the largest subset of adjacent nodes will receivetransmissions during a subsequent timeslot. When the subsequent timeslotarrives, the node 130 transmits the high-priority message on theidentified channel to the subset of adjacent nodes currently receivingtransmission on that channel. The node 130 then excludes that subset ofadjacent nodes from the set of adjacent nodes, and then analyzes thehopping sequences of the remaining nodes in order to identify thechannel on which the largest remaining subset of adjacent nodes willreceive transmissions during another subsequent timeslot. Node 130 mayrepeat this process until all adjacent nodes have been excluded from theset of adjacent nodes. When implementing the technique described above,the node 130 may transmit the high-priority message during eachsubsequent timeslot until all adjacent nodes have been excluded from theset of adjacent nodes, thereby minimizing the amount of time required tobroadcast the high-priority message to those adjacent nodes. The firstembodiment is described in greater detail below in conjunction with FIG.3.

In the second embodiment, when a given node 130 receives a high-prioritymessage, the node 130 analyzes the hopping sequences of adjacent nodesand determines the set of channels on which adjacent nodes receivetransmissions. The node 130 then selects a channel from the set ofchannels and identifies a timeslot within a subsequent epoch duringwhich the greatest number of adjacent nodes will be capable of receivingtransmissions on the selected channel. The node 130 then associates theselected channel with the identified timeslot. The node 130 repeats thisprocess for each channel in the set of channels, thereby associatingeach channel with a timeslot. During the subsequent epoch, at eachtimeslot that is associated with a channel, the node 130 transmits thehigh-priority message on that channel. When implementing the techniquedescribed above, the node 130 may transmit the high-priority messagejust once on each channel, thereby minimizing the number oftransmissions required to broadcast the high-priority message to theadjacent nodes. The second embodiment is described in greater detailbelow in conjunction with FIG. 4.

The first and second embodiments of the invention, as described above,may be implemented within some or all of the nodes 130 in order toensure efficient delivery of high-priority messages without requiringthose nodes to tune in to a frequency reserved solely for high-prioritymessages.

The techniques described herein are sufficiently flexible to be utilizedwithin any technically feasible network environment including, withoutlimitation, a wide-area network (WAN) or a local-area network (LAN).Moreover, multiple network types may exist within a given network system100. For example, communications between two nodes 130 or between a node130 and the corresponding access point 150 may be via a radio-frequencylocal-area network (RF LAN), while communications between access points150 and the network may be via a WAN such as a general packet radioservice (GPRS). As mentioned above, each node within wireless meshnetwork 102 includes a network interface that enables the node tocommunicate wirelessly with other nodes. Each node 130 may implement thefirst and/or second embodiments of the invention, as described above, byoperation of the network interface. An exemplary network interface isdescribed below in conjunction with FIG. 2.

FIG. 2 illustrates a network interface 200 configured to implementmulti-channel operation, according to one embodiment of the invention.Each node 110, 112, 130 within the wireless mesh network 102 of FIG. 1includes at least one instance of the network interface 200. The networkinterface 200 may include, without limitation, a microprocessor unit(MPU) 210, a digital signal processor (DSP) 214, digital to analogconverters (DACs) 220, 221, analog to digital converters (ADCs) 222,223, analog mixers 224, 225, 226, 227, a phase shifter 232, anoscillator 230, a power amplifier (PA) 242, a low noise amplifier (LNA)240, an antenna switch 244, and an antenna 246. A memory 212 may becoupled to the MPU 210 for local program and data storage. Similarly, amemory 216 may be coupled to the DSP 214 for local program and datastorage. Memory 212 and/or memory 216 may be used to store datastructures such as, e.g., a forwarding database, and/or routing tablesthat include primary and secondary path information, path cost values,and so forth.

In one embodiment, the MPU 210 implements procedures for processing IPpackets transmitted or received as payload data by the network interface200. The procedures for processing the IP packets may include, withoutlimitation, wireless routing, encryption, authentication, protocoltranslation, and routing between and among different wireless and wirednetwork ports. In one embodiment, MPU 210 implements the techniquesperformed by the node, as described in conjunction with FIGS. 1 and 3-4,when MPU 210 executes a firmware program stored in memory within networkinterface 200.

The DSP 214 is coupled to DAC 220 and DAC 221. Each DAC 220, 221 isconfigured to convert a stream of outbound digital values into acorresponding analog signal. The outbound digital values are computed bythe signal processing procedures for modulating one or more channels.The DSP 214 is also coupled to ADC 222 and ADC 223. Each ADC 222, 223 isconfigured to sample and quantize an analog signal to generate a streamof inbound digital values. The inbound digital values are processed bythe signal processing procedures to demodulate and extract payload datafrom the inbound digital values. Persons having ordinary skill in theart will recognize that network interface 200 represents just onepossible network interface that may be implemented within wireless meshnetwork 102 shown in FIG. 1, and that any other technically feasibledevice for transmitting and receiving data may be incorporated withinany of the nodes within wireless mesh network 102.

FIG. 3 is a flowchart of method steps illustrating a first technique fortransmitting a message to a set of neighboring nodes. Although themethod 300 is described in conjunction with the systems of FIGS. 1-2,persons of ordinary skill in the art will understand that any systemconfigured to perform the method steps, in any order, is within thescope of the present invention. The method 300 may be performed by anyof the nodes within wireless mesh network 102, including nodes 110, 112,or 130.

As shown, the method 300 begins at step 302, where a node 130 receives amessage, such as, e.g., a high-priority message. The message couldoriginate from, e.g., the server 154. At step 304, the node 130identifies the channel on which the largest subset of adjacent nodeswill receive transmissions during a subsequent timeslot. The node 130could, for example, divide the adjacent nodes into one or more subsetsbased on the hopping sequences associated with each adjacent node. Eachsuch subset would include adjacent nodes capable of receivingtransmissions during the subsequent time slot on the same channel, andthe nodes within a given subset would be capable of receivingtransmissions during the subsequent timeslot on a different channel thannodes in other subsets. The node 130 would then select the subset thatincludes the greatest number of nodes, and then identify the channel onwhich the nodes in that subset will be capable of receivingtransmissions during the subsequent timeslot.

At step 306, the node pauses until the subsequent timeslot has arrived.At step 308, the node 130 transmits the message on the channelidentified at step 304 to the subset of adjacent nodes currentlyreceiving transmissions on the identified channel. At step 310, the node130 excludes that subset of adjacent nodes from the set of adjacentnodes, since the message has been transmitted to those nodes andpresumably received. At step 312, the node 130 determines whether alladjacent nodes have been excluded from the set of adjacent nodes. If thenode 130 determines that all adjacent nodes have not been excluded fromthe set of adjacent nodes, then the method 300 return to step 304 andproceeds as described above. Otherwise, if node 130 determines that alladjacent nodes have been excluded from the set of adjacent nodes, thenthe method 300 ends.

By implementing the method 300, each node 130 may minimize the amount oftime required to forward a high-priority message to adjacent nodes. Thenodes 130 may also implement a second technique, mentioned above anddescribed in greater detail below in conjunction with FIG. 4.

FIG. 4 is a flowchart of method steps illustrating a second techniquefor transmitting a message to a set of neighboring nodes, according toone embodiment of the invention. Although the method 400 is described inconjunction with the systems of FIGS. 1-2, persons of ordinary skill inthe art will understand that any system configured to perform the methodsteps, in any order, is within the scope of the present invention. Themethod 400 may be performed by any of the nodes within wireless meshnetwork 102, including nodes 110, 112, or 130.

As shown, the method 400 begins at step 402, where a node 130 receives amessage, such as, e.g., a high-priority message. The message couldoriginate from, e.g., the server 154. At step 404, the node 130 selectsa channel from the set of channels on which adjacent nodes receivetransmissions. The node 130 may identify the set of channels on whichadjacent nodes receive transmissions based on analyzing the hoppingsequences of the adjacent nodes. At step 406, the node 130 identifies atimeslot during which the greatest number of adjacent nodes will receivetransmissions on the selected channel. The node 130 may analyze eachtimeslot within a subsequent epoch and determine, based on the hoppingsequences of the adjacent nodes, which adjacent nodes will be able toreceive transmissions on the selected channel during a given timeslot.At step 408, the node 130 associates the channel selected at step 404with the timeslot identified at step 406 and excludes the selectedchannel from the set of channels. At step 410, the node 130 determineswhether all channels have been excluded from the set of channels. If atstep 410 the node 130 determines that all channels have not beenexcluded from the set of channels, then the method 400 returns to step404 and proceeds as described above. Otherwise, if the node 130determines at step 410 that all channels have been excluded from the setof channels, then the method 400 proceeds to step 412.

At step 412, the node 130 waits until the subsequent timeslot hasarrived. At step 414, the node 130 determines whether a channel wasassociated with the timeslot (e.g. at step 408). If the node 130determines that the timeslot has an associated channel, then the method400 proceeds to step 416, where the node 130 transmits the message onthe channel associated with the current timeslot. The method thenproceeds to step 418. Referring back to step 414, if the node 130determines that the timeslot does not have an associated channel, thenthe method 400 proceeds directly to step 418 and skips step 416. At step418, the node 130 determines whether the message was transmitted on eachchannel in the set of channels. If at step 418 the node 130 determinesthat the message was not transmitted on each channel in the set ofchannels, then the method 400 returns to step 412 and proceeds asdescribed above. Otherwise, if at step 418 the node 130 determines thatthe message was in fact transmitted on each channel in the set ofchannels, then the method 400 ends.

By implementing the method 400, each node 130 may minimize the number oftransmissions required to forward a high-priority message to adjacentnodes.

In sum, a node within a wireless mesh network is configured to forward ahigh-priority message to adjacent nodes in the wireless mesh network byeither (i) transmitting the message during successive timeslots to thelargest subset of nodes capable of receiving transmissions during eachtimeslot, or (ii) transmitting the message on each different channelduring the timeslot when the largest subset of nodes are capable ofreceiving transmissions on each of those channels.

Advantageously, nodes in the wireless mesh network are not required toperiodically tune-in to a reserved channel to listen for high-prioritymessages, thereby improving the efficiency and throughput of thewireless mesh network as a whole.

While the foregoing is directed to embodiments of the present invention,other and further embodiments of the invention may be devised withoutdeparting from the basic scope thereof. For example, aspects of thepresent invention may be implemented in hardware or software or in acombination of hardware and software. One embodiment of the inventionmay be implemented as a program product for use with a computer system.The program(s) of the program product define functions of theembodiments (including the methods described herein) and can becontained on a variety of computer-readable storage media. Illustrativecomputer-readable storage media include, but are not limited to: (i)non-writable storage media (e.g., read-only memory devices within acomputer such as CD-ROM disks readable by a CD-ROM drive, flash memory,ROM chips or any type of solid-state non-volatile semiconductor memory)on which information is permanently stored; and (ii) writable storagemedia (e.g., floppy disks within a diskette drive or hard-disk drive orany type of solid-state random-access semiconductor memory) on whichalterable information is stored. Such computer-readable storage media,when carrying computer-readable instructions that direct the functionsof the present invention, are embodiments of the present invention.

In view of the foregoing, the scope of the present invention isdetermined by the claims that follow.

What is claimed is:
 1. A computer-implemented method, comprising:selecting a first channel from a set of channels on which nodes residingadjacent to a first node receive transmissions; identifying a first timeinterval subsequent to a current time interval during which a greatestnumber of nodes residing adjacent to the first node will receivetransmissions on the first channel; and transmitting a message on thefirst channel during the first time interval.
 2. Thecomputer-implemented method of claim 1, further comprising: excludingthe first channel from the set of channels; selecting a second channelfrom a set of channels; identifying a second time interval subsequent tothe current time interval during which the greatest number of nodesresiding adjacent to the first node will receive transmissions on thesecond channel; and transmitting the message on the second channelduring the second time interval.
 3. The computer-implemented method ofclaim 2, further comprising analyzing each time slot in a sequence oftime slots based on channel hopping sequences associated with aplurality of nodes residing adjacent to the first node to determine oneor more adjacent nodes that are capable of receiving transmissions onthe first channel during the first time interval.
 4. Thecomputer-implemented method of claim 3, further comprising analyzingeach time slot in the sequence of time slots based on the channelhopping sequences associated with the plurality of nodes residingadjacent to the first node to determine one or more adjacent nodescapable of receiving transmissions on the second channel during thesecond time interval.
 5. The computer-implemented method of claim 1,further comprising determining that each channel on which the nodesresiding adjacent to the first node receive transmissions has beenexcluded from the set of channels.
 6. The computer-implemented method ofclaim 1, wherein the first node and the nodes residing adjacent to thefirst node comprise at least a portion of a wireless mesh networkconfigured to manage the operation of an electricity distributioninfrastructure.
 7. The computer-implemented method of claim 1, furthercomprising transmitting the message once on each channel in the set ofchannels after excluding the first channel.
 8. The computer-implementedmethod of claim 1, wherein the message comprises a high-prioritymessage.
 9. A non-transitory computer-readable medium storinginstructions that, when executed by a processor, cause the processor toperform the steps of: selecting a first channel from a set of channelson which nodes residing adjacent to a first node receive transmissions;identifying a first time interval subsequent to a current time intervalduring which a greatest number of nodes residing adjacent to the firstnode will receive transmissions on the first channel; and transmitting amessage on the first channel during the first time interval.
 10. Thenon-transitory computer-readable medium of claim 9, further comprising:excluding the first channel from the set of channels; selecting a secondchannel from a set of channels; identifying a second time intervalsubsequent to the current time interval during which the greatest numberof nodes residing adjacent to the first node will receive transmissionson the second channel; and transmitting the message on the secondchannel during the second time interval.
 11. The non-transitorycomputer-readable medium of claim 10, further comprising analyzing eachtime slot in a sequence of time slots based on channel hopping sequencesassociated with a plurality of nodes residing adjacent to the first nodeto determine one or more adjacent nodes that are capable of receivingtransmissions on the first channel during the first time interval. 12.The non-transitory computer-readable medium of claim 11, furthercomprising analyzing each time slot in the sequence of time slots basedon the channel hopping sequences associated with the plurality of nodesresiding adjacent to the first node to determine one or more adjacentnodes capable of receiving transmissions on the second channel duringthe second time interval.
 13. The device of claim 11, wherein theprocessor is further configured to analyze each time slot in thesequence of time slots based on the channel hopping sequences associatedwith the plurality of nodes residing adjacent to the first node todetermine one or more adjacent nodes capable of receiving transmissionson the second channel during the second time interval.
 14. The device ofclaim 10, wherein the processor is further configured to analyze eachtime slot in a sequence of time slots based on channel hopping sequencesassociated with a plurality of nodes residing adjacent to the first nodeto determine one or more adjacent nodes that are capable of receivingtransmissions on the first channel during the first time interval. 15.The non-transitory computer-readable medium of claim 9, furthercomprising determining that each channel on which the nodes residingadjacent to the first node receive transmissions has been excluded fromthe set of channels.
 16. The non-transitory computer-readable medium ofclaim 9, wherein the first node and the nodes residing adjacent to thefirst node comprise at least a portion of a wireless mesh networkconfigured to manage the operation of an electricity distributioninfrastructure.
 17. The non-transitory computer-readable medium of claim9, further comprising transmitting the message once on each channel inthe set of channels after excluding the first channel.
 18. Thenon-transitory computer-readable medium of claim 9, wherein the messagecomprises a high-priority message.
 19. The device of claim 9, whereinthe processor is further configured to: exclude the first channel fromthe set of channels; select a second channel from a set of channels;identify a second time interval subsequent to the current time intervalduring which the greatest number of nodes residing adjacent to the firstnode will receive transmissions on the second channel; and transmit themessage on the second channel during the second time interval.
 20. Thedevice of claim 9, wherein the processor is further configured todetermine that each channel on which the nodes residing adjacent to thefirst node receive transmissions has been excluded from the set ofchannels.
 21. The device of claim 9, wherein the first node and thenodes residing adjacent to the first node comprise at least a portion ofa wireless mesh network configured to manage the operation of anelectricity distribution infrastructure.
 22. The device of claim 9,wherein the processor is further configured to transmit the message onceon each channel in the set of channels after excluding the firstchannel.
 23. The device of claim 9, wherein the message comprises ahigh-priority message.
 24. A device, comprising: a memory storinginstructions; and a processor that is coupled to the memory and, whenexecuting the instructions, is configured to: select a first channelfrom a set of channels on which nodes residing adjacent to a first nodereceive transmissions; identify a first time interval subsequent to acurrent time interval during which a greatest number of nodes residingadjacent to the first node will receive transmissions on the firstchannel; and transmit a message on the first channel during the firsttime interval.